package com.ruoyi.back.domain.dto

import io.swagger.annotations.ApiModel
import io.swagger.annotations.ApiModelProperty

@ApiModel("用户订单入参")
data class UserMemberOrderDto(

    @ApiModelProperty("来源渠道")
    var channel: String? = null,

    @ApiModelProperty("充值方式", hidden = true)
    var payType: Int? = null,

    @ApiModelProperty("购买类型")
    var memberId: Long? = null,

    @ApiModelProperty("单次支付记录id", hidden = true)
    var singlePayRecordId: Long? = null,

    @ApiModelProperty("支付金额", hidden = true)
    var payAmount: Double? = null,
)

@ApiModel("文生图入参")
data class Text2PicOrderDto(

    @ApiModelProperty("来源渠道")
    var channel: String? = null,

    @ApiModelProperty("充值方式", hidden = true)
    var payType: Int? = null,

    @ApiModelProperty("购买类型")
    var memberId: Long? = null,

    @ApiModelProperty("支付金额", hidden = true)
    var payAmount: Double? = null,

    @ApiModelProperty("输入内容，长度不超过100个字")
    var text: String? = null,

    @ApiModelProperty("图片分辨率，可支持1024*1024、1024*1536、1536*1024")
    var resolution: String? = null,

    @ApiModelProperty("风格id")
    var style: String? = null,

    @ApiModelProperty("图片生成数量，支持1-6张")
    var num: Int? = 1
)


@ApiModel("图生图入参")
data class Pic2PicOrderDto(

    @ApiModelProperty("来源渠道")
    var channel: String? = null,

    @ApiModelProperty("充值方式", hidden = true)
    var payType: Int? = null,

    @ApiModelProperty("购买类型")
    var memberId: Long? = null,

    @ApiModelProperty("支付金额", hidden = true)
    var payAmount: Double? = null,

    @ApiModelProperty("原始图片")
    var inputUrl: String? = null,

    @ApiModelProperty("描述词")
    var prompt: String? = null,

    @ApiModelProperty("不希望出现的内容")
    var negativePrompt: String? = null,

    @ApiModelProperty("多个风格使用逗号拼接")
    var styles: String? = null,

    @ApiModelProperty("直接传尺寸")
    var resultConfig: String? = null,

    @ApiModelProperty("原图参考度")
    var strength: Float? = null,
)


@ApiModel("头像卡通化参数")
data class CartoonOrderDto(

    @ApiModelProperty("来源渠道")
    var channel: String? = null,

    @ApiModelProperty("充值方式", hidden = true)
    var payType: Int? = null,

    @ApiModelProperty("购买类型")
    var memberId: Long? = null,

    @ApiModelProperty("支付金额", hidden = true)
    var payAmount: Double? = null,

    @ApiModelProperty("风格id")
    var style: String? = null,

    @ApiModelProperty("原始图片")
    var inputUrl: String? = null
)

